Model je konstruiran s
programom NetLogo.
Ogled ali prenos datoteke: 3D telesa.nlogo.
Ta model ustvarja 3D telesa
iz 2D točk, ki jih umešča med kartezične in sferične tridimenzionalne
koordinate.
Za prikazovanje 3D teles,
program naključno razporeja točke na površini telesa (ali znotraj nje) v
kartezičnih (x, y, z) ali sferičnih (theta, fi, z) koordinatah, odvisno v
katerih je to enostavnejše, vendar pa informacija o sferičnih koordinatah, ko
je ta obvezna, vedno ostane shranjena. Za prikaz sfere v NetLogovem pogledu,
model pretvarja točkine sferične koordinate v kartezične, saj tako lahko z
odtenki barv simulira globino. Položaji točk pa so vedno shranjeni v sferičnih
koordinatah, saj je najenostavnejši način za izvebdo vrtenja okoli osi z
povečevanje spremenljivke theta v sferičnih koordinatah.
Pretvarjanje iz kartezičnih v
sferične koordinate:
x = r * cos(theta) = p *
sin(fi) * cos(theta)
y = r * sin(theta) = p * sin(fi) * sin(theta)
z = p * cos(theta)
theta: kot med točko in njeno
projekcijo na ravnino xy.
fi: vpadni kot točke okoli osi z.
p: oddaljenost točke od izhodišča.
Kliknite gumbe z različnimi
imeni teles; tako boste generirali animacije teh teles. Točke so naključno
porazdeljene po površini ali po notranjosti telesa. Za zagon animacije kliknite
gumb prikaži.
Gumb PRIKAŽI zažene animacijo
(vrtenje) modela.
Gumb PRIKAZNA-BARVA določa
barvo, ki bo uporabljena za simulacijo globine z generiranjem različnih
odtenkov (v uporabi so vnaprej določene NetLogove barve).
Gumb STEVILO-TOCK določa
število točk, ki bodo uporabljene za generiranje izbranega telesa.
Gumb VELIKOST-TELESA določa
celotno velikost telesa. Najpogosteje s tem določimo dolžino radija ali
stranice.
Gumb KOTNA-HITROST določa
hitrost, s katero se točke vrtijo okoli določene osi.
(Vrtenje točk je realizirano
preprosto z naraščanjem spremenljivke theta za vsako točko posebej z ukazom
kotna-hitrost! VRTENJE točk (okoli njihove osi z) je enostavno v sferičnih
koordinatah. Vendar pa je po drugi strani transponiranje točk mnogo
enostavnješe v kartezičnih koordinatah.)
Opazite, da se bližnje točke
(pozitivne) na osi y pojavljajo v svetlejšem odtenku, bolj oddaljene točke
(negativne) pa se pojavljajo v temnejšem odtenku.
Poskusite prilagajati kotno
hitrost ter prikazne barve medtem, ko je model zagnan. Zagotovljen je takojšen
odziv na vaše vnešene spremembe.
[PREPROSTO] Prilagodite
postopek za generiranje kvadrata tako, da boste generirali pravokotnik.
Napišite postopek za
zamenjavo (transponiranje) koordinat vsake točke. Vedite, da je to enostavneje
v kartezičnih koordinatah.
Zapišite postopek za
generiranje novih 3D geometrijskih objektov.
Poskusite animirati spremembe
spremenljivke fi. Razmislite, zakaj to pravzaprav nima pravega smisla?
Zapišite postopek za rotacijo
geometrijskih teles okoli različnih osi.
[ZELO TEŽKO] Zapišite
psotopek za pogled na geometrijski telo iz POLJUBNEGA kota namesto le
obstoječih treh.
Bodite pozorni na uporabo
prikaznih barv za ponazoritev globine točk in s tem simulacijo 3D.
Za sklicevanje na ta model v
akademskih publikacijah, prosimo navedite: Wilensky, U. (1998). NetLogo 3D
Solids model. http://ccl.northwestern.edu/netlogo/models/3DSolids.
Center for Connected Learning and Computer-Based Modeling, Northwestern
University, Evanston, IL.
V ostalih publikacijah,
prosimo uporabite: Avtorske pravice 1998 Uri Wilensky. Vse pravice pridrzane.
Oglejte si http://ccl.northwestern.edu/netlogo/models/3DSolids
za pogoje uporabe.
Prevod v slovenščino: Tilen Šetina.